home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 1998 November / IRIX 6.5.2 Base Documentation November 1998.img / usr / share / catman / g_man / cat3 / OpenGL-ftn / fgltexsubimage4dext.z / fgltexsubimage4dext
Text File  |  1998-10-20  |  18KB  |  266 lines

  1.  
  2.  
  3.  
  4. ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))       OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee       ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS - specify a four-dimensional texture subimage
  10.  
  11.  
  12. FFFFOOOORRRRTTTTRRRRAAAANNNN SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  13.      SUBROUTINE ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS( INTEGER*4 _t_a_r_g_e_t,
  14.                                       INTEGER*4 _l_e_v_e_l,
  15.                                       INTEGER*4 _x_o_f_f_s_e_t,
  16.                                       INTEGER*4 _y_o_f_f_s_e_t,
  17.                                       INTEGER*4 _z_o_f_f_s_e_t,
  18.                                       INTEGER*4 _w_o_f_f_s_e_t,
  19.                                       INTEGER*4 _w_i_d_t_h,
  20.                                       INTEGER*4 _h_e_i_g_h_t,
  21.                                       INTEGER*4 _d_e_p_t_h,
  22.                                       INTEGER*4 _s_i_z_e_4_d,
  23.                                       INTEGER*4 _f_o_r_m_a_t,
  24.                                       INTEGER*4 _t_y_p_e,
  25.                                       CHARACTER*8 _p_i_x_e_l_s )
  26.  
  27.  
  28. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  29.      _t_a_r_g_e_t   Specifies the target texture.  Must be GGGGLLLL____TTTTEEEEXXXXTTTTUUUURRRREEEE____4444DDDD____SSSSGGGGIIIISSSS.
  30.  
  31.      _l_e_v_e_l    Specifies the level-of-detail number.  Level 0 is the base image
  32.               level.  Level _n is the _nth mipmap reduction image.
  33.  
  34.      _x_o_f_f_s_e_t  Specifies a texel offset in the x direction within the texture
  35.               array.
  36.  
  37.      _y_o_f_f_s_e_t  Specifies a texel offset in the y direction within the texture
  38.               array.
  39.  
  40.      _z_o_f_f_s_e_t  Specifies a texel offset in the z direction within the texture
  41.               array.
  42.  
  43.      _w_o_f_f_s_e_t  Specifies a texel offset in the w direction within the texture
  44.               array.
  45.  
  46.      _w_i_d_t_h    Specifies the width of the texture subimage.
  47.  
  48.      _h_e_i_g_h_t   Specifies the height of the texture subimage.
  49.  
  50.      _d_e_p_t_h    Specifies the depth of the texture subimage.
  51.  
  52.      _s_i_z_e_4_d   Specifies the extent (4th dimension size) of the texture
  53.               subimage.
  54.  
  55.      _f_o_r_m_a_t   Specifies the format of the pixel data.  The following symbolic
  56.               values are accepted:  GGGGLLLL____CCCCOOOOLLLLOOOORRRR____IIIINNNNDDDDEEEEXXXX, GGGGLLLL____RRRREEEEDDDD, GGGGLLLL____GGGGRRRREEEEEEEENNNN, GGGGLLLL____BBBBLLLLUUUUEEEE,
  57.               GGGGLLLL____AAAALLLLPPPPHHHHAAAA, GGGGLLLL____RRRRGGGGBBBB, GGGGLLLL____RRRRGGGGBBBBAAAA, GGGGLLLL____AAAABBBBGGGGRRRR____EEEEXXXXTTTT, GGGGLLLL____LLLLUUUUMMMMIIIINNNNAAAANNNNCCCCEEEE, and
  58.               GGGGLLLL____LLLLUUUUMMMMIIIINNNNAAAANNNNCCCCEEEE____AAAALLLLPPPPHHHHAAAA.
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))       OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee       ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))
  71.  
  72.  
  73.  
  74.      _t_y_p_e     Specifies the data type of the pixel data.  The following
  75.               symbolic values are accepted:  GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____BBBBYYYYTTTTEEEE, GGGGLLLL____BBBBYYYYTTTTEEEE,
  76.               GGGGLLLL____BBBBIIIITTTTMMMMAAAAPPPP, GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____SSSSHHHHOOOORRRRTTTT, GGGGLLLL____SSSSHHHHOOOORRRRTTTT, GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____IIIINNNNTTTT, GGGGLLLL____IIIINNNNTTTT,
  77.               GGGGLLLL____FFFFLLLLOOOOAAAATTTT, GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____BBBBYYYYTTTTEEEE____3333____3333____2222____EEEEXXXXTTTT,
  78.               GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____SSSSHHHHOOOORRRRTTTT____4444____4444____4444____4444____EEEEXXXXTTTT, GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____SSSSHHHHOOOORRRRTTTT____5555____5555____5555____1111____EEEEXXXXTTTT,
  79.               GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____IIIINNNNTTTT____8888____8888____8888____8888____EEEEXXXXTTTT, and GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____IIIINNNNTTTT____11110000____11110000____11110000____2222____EEEEXXXXTTTT.
  80.  
  81.      _p_i_x_e_l_s   Specifies a pointer to the image data in memory.
  82.  
  83.  
  84. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  85.      Texturing maps a portion of a specified _t_e_x_t_u_r_e _i_m_a_g_e onto each graphical
  86.      primitive for which texturing is enabled.  Four-dimensional texturing is
  87.      enabled and disabled using ffffggggllllEEEEnnnnaaaabbbblllleeee and ffffggggllllDDDDiiiissssaaaabbbblllleeee with argument
  88.      GGGGLLLL____TTTTEEEEXXXXTTTTUUUURRRREEEE____4444DDDD____SSSSGGGGIIIISSSS.
  89.  
  90.      ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS redefines a contiguous subregion of an existing
  91.      four-dimensional texture image.  The texels referenced by _p_i_x_e_l_s replace
  92.      the portion of the existing texture array with x indices _x_o_f_f_s_e_t and
  93.      _x_o_f_f_s_e_t+_w_i_d_t_h-1, inclusive, y indices _y_o_f_f_s_e_t and _y_o_f_f_s_e_t+_h_e_i_g_h_t-1,
  94.      inclusive (But, see discussion of GGGGLLLL____IIIINNNNTTTTEEEERRRRLLLLAAAACCCCEEEE____SSSSGGGGIIIIXXXX below), and z indices
  95.      _z_o_f_f_s_e_t and _z_o_f_f_s_e_t+_d_e_p_t_h-1, inclusive and w indices _w_o_f_f_s_e_t and
  96.      _w_o_f_f_s_e_t+_s_i_z_e_4_d-1, inclusive.  This region may not include any texels
  97.      outside the range of the texture array as it was originally specified.
  98.      It is not an error to specify a subtexture with zero width, height,
  99.      depth, or extent, but such a specification has no effect.
  100.  
  101.      If GGGGLLLL____IIIINNNNTTTTEEEERRRRLLLLAAAACCCCEEEE____SSSSGGGGIIIIXXXX is enabled, then every other row of the destination
  102.      texture is skipped. That is, only rows (0,2,4,...) of each S-T slice
  103.      (where the border is considered part of the slice) are defined. A
  104.      complete video frame may be assembled in a slice of the texture array by
  105.      invoking ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS on two consecutive video fields, with
  106.      _y_o_f_f_s_e_t values that differ by one.
  107.  
  108. NNNNOOOOTTTTEEEESSSS
  109.      Texturing has no effect in color index mode.
  110.  
  111.      ffffggggllllPPPPiiiixxxxeeeellllSSSSttttoooorrrreeee and ffffggggllllPPPPiiiixxxxeeeellllTTTTrrrraaaannnnssssffffeeeerrrr modes affect texture images in exactly
  112.      the way they affect ffffggggllllDDDDrrrraaaawwwwPPPPiiiixxxxeeeellllssss.
  113.  
  114.      ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS is only available if both the EEEEXXXXTTTT____ssssuuuubbbbtttteeeexxxxttttuuuurrrreeee and
  115.      SSSSGGGGIIIISSSS____tttteeeexxxxttttuuuurrrreeee4444DDDD extensions are supported.
  116.  
  117.      If _t_y_p_e is set to GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____BBBBYYYYTTTTEEEE____3333____3333____2222____EEEEXXXXTTTT,
  118.      GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____SSSSHHHHOOOORRRRTTTT____4444____4444____4444____4444____EEEEXXXXTTTT, GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____SSSSHHHHOOOORRRRTTTT____5555____5555____5555____1111____EEEEXXXXTTTT,
  119.      GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____IIIINNNNTTTT____8888____8888____8888____8888____EEEEXXXXTTTT, or GGGGLLLL____UUUUNNNNSSSSIIIIGGGGNNNNEEEEDDDD____IIIINNNNTTTT____11110000____11110000____11110000____2222____EEEEXXXXTTTT and the
  120.      EEEEXXXXTTTT____ppppaaaacccckkkkeeeedddd____ppppiiiixxxxeeeellllssss extension is not supported then a GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM error
  121.      is generated.
  122.  
  123.      See ffffggggllllIIIInnnnttttrrrroooo for more information on using extensions.
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))       OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee       ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))
  137.  
  138.  
  139.  
  140. EEEERRRRRRRROOOORRRRSSSS
  141.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM is generated when _t_a_r_g_e_t is not GGGGLLLL____TTTTEEEEXXXXTTTTUUUURRRREEEE____4444DDDD____SSSSGGGGIIIISSSS.
  142.  
  143.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNN is generated when the texture array has not been
  144.      defined by a previous ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee4444DDDD operation.
  145.  
  146.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____VVVVAAAALLLLUUUUEEEE is generated if _l_e_v_e_l is less than zero or greater than
  147.      log (_m_a_x), where _m_a_x is the returned value of
  148.         2
  149.      GGGGLLLL____MMMMAAAAXXXX____4444DDDD____TTTTEEEEXXXXTTTTUUUURRRREEEE____SSSSIIIIZZZZEEEE____SSSSGGGGIIIISSSS.
  150.  
  151.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____VVVVAAAALLLLUUUUEEEE is generated if xoffset<-TEXTURE_BORDER,
  152.      (xoffset+width)>(TEXTURE_WIDTH-TEXTURE_BORDER), yoffset<-TEXTURE_BORDER,
  153.      (yoffset+interlacexheight)>(TEXTURE_HEIGHT-TEXTURE_BORDER),
  154.      zoffset<-TEXTURE_BORDER, (zoffset+depth)>(TEXTURE_DEPTH_EXT-
  155.      TEXTURE_BORDER), where TEXTURE_WIDTH, TEXTURE_HEIGHT, TEXTURE_DEPTH_EXT
  156.      and TEXTURE_BORDER, (woffset+size4d)>(TEXTURE_4DSIZE_SGIS-
  157.      TEXTURE_BORDER), where TEXTURE_WIDTH, TEXTURE_HEIGHT, TEXTURE_DEPTH_EXT,
  158.      TEXTURE_4DSIZE_SGIS and TEXTURE_BORDER are the state values of the
  159.      texture image being modified, and interlace is 1 if GGGGLLLL____IIIINNNNTTTTEEEERRRRLLLLAAAACCCCEEEE____SSSSGGGGIIIIXXXX is
  160.      disabled and 2 otherwise.  Note that TEXTURE_WIDTH, TEXTURE_HEIGHT,
  161.      TEXTURE_DEPTH_EXT and TEXTURE_4DSIZE_SGIS include twice the border width.
  162.  
  163.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM is generated when _f_o_r_m_a_t is not an accepted _f_o_r_m_a_t
  164.      constant.
  165.  
  166.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM is generated when _t_y_p_e is not a _t_y_p_e constant.
  167.  
  168.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM is generated if _t_y_p_e is GGGGLLLL____BBBBIIIITTTTMMMMAAAAPPPP and _d_e_p_t_h is not
  169.      GGGGLLLL____CCCCOOOOLLLLOOOORRRR____IIIINNNNDDDDEEEEXXXX.
  170.  
  171.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNN is generated if ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS is executed
  172.      between the execution of ffffggggllllBBBBeeeeggggiiiinnnn and the corresponding execution of
  173.      ffffggggllllEEEEnnnndddd.
  174.  
  175. AAAASSSSSSSSOOOOCCCCIIIIAAAATTTTEEEEDDDD GGGGEEEETTTTSSSS
  176.      ffffggggllllGGGGeeeettttTTTTeeeexxxxIIIImmmmaaaaggggeeee
  177.      ffffggggllllIIIIssssEEEEnnnnaaaabbbblllleeeedddd with argument GGGGLLLL____TTTTEEEEXXXXTTTTUUUURRRREEEE____4444DDDD____SSSSGGGGIIIISSSS
  178.  
  179.  
  180. MMMMAAAACCCCHHHHIIIINNNNEEEE DDDDEEEEPPPPEEEENNNNDDDDEEEENNNNCCCCIIIIEEEESSSS
  181.      The EEEEXXXXTTTT____ppppaaaacccckkkkeeeedddd____ppppiiiixxxxeeeellllssss extension is not supported on RealityEngine,
  182.      RealityEngine2, and VTX systems.
  183.  
  184.      On High Impact and Maximum Impact systems, if the right side of the image
  185.      to be transferred to texture memory is not the right side of the texture,
  186.      then its index must be a multiple of 32, where index = xoffset+width.
  187.      Otherwise it will generate a GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____VVVVAAAALLLLUUUUEEEE error.
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.                                                                         PPPPaaaaggggeeee 3333
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203. ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))       OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee       ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee4444DDDDSSSSGGGGIIIISSSS((((3333GGGG))))
  204.  
  205.  
  206.  
  207. SEE ALSO
  208.      ffffggggllllDDDDrrrraaaawwwwPPPPiiiixxxxeeeellllssss, ffffggggllllFFFFoooogggg, ffffggggllllPPPPiiiixxxxeeeellllSSSSttttoooorrrreeee, ffffggggllllPPPPiiiixxxxeeeellllTTTTrrrraaaannnnssssffffeeeerrrr, ffffggggllllTTTTeeeexxxxEEEEnnnnvvvv,
  209.      ffffggggllllTTTTeeeexxxxGGGGeeeennnn, ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee4444DDDD, ffffggggllllTTTTeeeexxxxPPPPaaaarrrraaaammmmeeeetttteeeerrrr.
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.                                                                         PPPPaaaaggggeeee 4444
  263.  
  264.  
  265.  
  266.